﻿<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>SetBatchLines</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link href="../css/commands.css" rel="stylesheet" type="text/css">
<link href="../css/print.css" rel="stylesheet" type="text/css" media="print">
</head>
<body>

<h1>SetBatchLines</h1>

<p>决定脚本的执行速度（影响cpu占用）。</p>

<p class="CommandSyntax">SetBatchLines, 20ms<br>
    SetBatchLines, LineCount </p>
<h3>参数 </h3>
<table border="1" width="100%" cellspacing="0" cellpadding="3" bordercolor="#C0C0C0">
  <tr>
    <td width="15%">20ms</td>
    <td width="85%">（ 20ms 只是举一个例子。）如果这个参数以 ms 结尾，它表示脚本每两次休眠之间的时间间隔（每次休眠 10ms）。在下面的例子中，设置脚本每执行 20ms 之后休眠 10ms ：SetBatchLines, 20ms</td>
  </tr>
  <tr>
    <td>LineCount</td>
    <td>两次休眠之间执行脚本的行数。这个参数最大可以到 9223372036854775807 。但是，这个参数和上面那个参数是互相冲突的；也就是说，同时只有一个参数有效。</td>
  </tr>
</table>

<h3>注意</h3>
<p>使用 <em>SetBatchLines -1</em> 让脚本无休眠地执行（换句话说，也就是让脚本全速运行）。</p>
<p>如果没有使用这个命令：</p>
<ul>
  <li>AutoIt v2 （.aut）的脚本默认使用 <em>SetBatchLines 1</em> ，每执行一行脚本休眠一次。</li>
  <li>其它类型的脚本（例如.ahk）默认使用 <em>SetBatchLines 10ms</em> 。不过在 v1.0.16 之前的版本中，默认使用的是 <em>SetBatchLines 10</em> 。</li>
</ul>
<p>不论是注重脚本执行速度还是注重cpu占用，都推荐使用带“ms”的参数。例如，在大多数的系统中，设置 10ms 的休眠间隔可以让脚本占用不超过 50% 的cpu资源。这样不但让脚本快速执行，也可以保留充分的cpu资源让其它任务使用，例如游戏或者视频捕捉、回放。</p>
<p>内置变量 <strong>A_BatchLines</strong> 保存了当前设置。</p>
<p>在特定的脚本中，脚本的执行速度同时还受这些命令影响：<a href="SetWinDelay.htm">SetWinDelay</a> ，<a href="SetControlDelay.htm">SetControlDelay</a> ，<a href="SendMode.htm">SendMode</a> ，<a href="SetKeyDelay.htm">SetKeyDelay</a> ，<a href="SetMouseDelay.htm">SetMouseDelay</a> 以及 <a href="SetDefaultMouseSpeed.htm">SetDefaultMouseSpeed</a> 。</p>
<p>每一个新运行的 <a href="../misc/Threads.htm">Thread/线程</a>（例如一个 <a href="../Hotkeys.htm">hotkey/热键</a>，<a href="Menu.htm">custom menu item/自定义菜单</a>，或 <a href="SetTimer.htm">timed/定时器</a> 事件）会将该命令的设置重置为默认值。要更改该命令的默认值，可以将该命令放在脚本的自动执行区域（脚本的顶部）。</p>
<h3>相关命令</h3>
<p><a href="SetWinDelay.htm">SetWinDelay</a>, <a href="SetControlDelay.htm">SetControlDelay</a>, <a href="SendMode.htm">SendMode</a>, <a href="SetKeyDelay.htm">SetKeyDelay</a>, <a href="SetMouseDelay.htm">SetMouseDelay</a>, <a href="SetDefaultMouseSpeed.htm">SetDefaultMouseSpeed</a>, <a href="Critical.htm">Critical</a></p>
<h3>示例</h3>
<pre class="NoIndent">SetBatchLines, 10ms 
SetBatchLines, 1000</pre>

</body>
</html>
